#ifndef __ActionSelectObject_h_
#define __ActionSelectObject_h_
#include <iostream>
#include <Ogre.h>
#include <OIS/OIS.h>
#include "SceneObject.h"
#include "Actions/ActionMoveObject.h"

class ActionSelectObject
{
	public:
		ActionSelectObject(Ogre::Camera *mCam, Ogre::SceneManager *mSceneMgr, Ogre::RaySceneQuery* mRaySceneQuery);
		~ActionSelectObject();

		bool isDeselected();
		bool mousePressed(const OIS::MouseEvent &evt);
		Ogre::SceneNode* getSelectedNode();
		ActionMoveObject* getActionMoveObject();

	private:

		Ogre::Camera *mCamera;
		Ogre::SceneManager *mSceneMgr;   // The current SceneManager
		Ogre::SceneNode *mCurrentObject;         // The newly created object
		Ogre::RaySceneQuery* mRaySceneQuery;
		//ActionMoveObject *moveObject;
		bool deselected;
};
#endif 